import {
    getTopMV
} from '../../service/api_video'

Page({
    data: {
        topMVs: [],
        hasMore: true
    },
    /**
     * 生命周期函数--监听页面加载（created）
     */
    onLoad: async function (options) {
        this.getTopMVList(0)
    },
    /**
     * 监听到下拉
     */
    onPullDownRefresh: async function () {
        console.log("下拉刷新");
        this.getTopMVList(0)
    },
    /**
     * 监听到滚动到底部
     */
    onReachBottom: async function () {
        console.log("滚动到底部了");
        this.getTopMVList(this.data.topMVs.length)
    },
    /**
     * 监听组件：点击跳转到视频详情
     */
    handleVideoItemClick: function (event) {
        console.log("点击视频")
        //通过wxml中绑定的data-item属性，拿到数据，绑定的属性值在
        const item = event.currentTarget.dataset.item
        //id
        const id = item.id
        //跳转视频详情界面
        wx.navigateTo({
          url: '/pages/detail-video/index?id=' + id,
        })
    },
    getTopMVList: async function (offset) {
        //判断是否可以请求
        if (!this.data.hasMore && offset !== 0) {
            //没有数据量，不在请求
            return
        }
        //导航栏显示加载动画
        wx.showNavigationBarLoading()
        const res = await getTopMV(offset)
        let newData = this.data.topMVs
        if (offset === 0) {
            // 刷新或者初始请求，直接覆盖
            newData = res.data
        } else {
            //滚动请求，需要拼接
            newData = newData.concat(res.data)
        }
        this.setData({
            topMVs: newData
        })
        this.setData({
            hasMore: res.hasMore
        })
        //导航栏关闭加载动画
        wx.hideNavigationBarLoading()
        if (offset === 0) {
            //下拉动画默认就有，但是是白色的，看不到，如果要看到需要修改json文件 "backgroundTextStyle": "dark",
            //需要手动停止下拉刷新动画，不然到一定时间蔡停止
            wx.stopPullDownRefresh()
        }
        return newData
    }
})